import { createApp } from 'vue'
import ElementPlus from 'element-plus'
import zhCn from 'element-plus/es/locale/lang/zh-cn'
import 'element-plus/dist/index.css'
import '@/assets/css/common.scss'
import App from './App.vue'
import './registerServiceWorker'
import router from './router'
import store from './store'
import * as echarts from 'echarts'
import vue3SeamlessScroll from "vue3-seamless-scroll";
import 'amfe-flexible';
// 动态调整根字体大小的函数
const updateRootFontSize = () => {
  const baseSize = 16; // 基准字体大小
  const minFontSize = 12; // 最小字体大小
  const maxFontSize = 20; // 最大字体大小
  const designWidth = 1440; // 设计稿的宽度基准
  const clientWidth = document.documentElement.clientWidth; // 当前窗口的宽度
  const scale = clientWidth / designWidth; // 计算当前窗口宽度与设计稿宽度的比例
  let newSize = baseSize * scale;
  // 限制字体大小在最小和最大范围内
  if (newSize < minFontSize) {
    newSize = minFontSize;
  } else if (newSize > maxFontSize) {
    newSize = maxFontSize;
  }
  // 设置根元素的字体大小
  document.documentElement.style.fontSize = `${newSize}px`;
};
// 监听窗口大小变化，并动态调整字体大小
window.addEventListener('resize', updateRootFontSize);
// 初始化时立即设置一次字体大小
updateRootFontSize();

const app = createApp(App)
app.config.globalProperties.$echarts = echarts
app.use(ElementPlus, {
    locale: zhCn,
})
app.use(ElementPlus).use(store).use(router).use(vue3SeamlessScroll).mount('#app')
